/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package theeg.DependencyAnalysis.Core.DataModel;

import LEX.Queryable;

import java.awt.*;
import java.util.List;

/**
 * @author theeg
 */
public class TypeDescriptor implements Descriptor
{

    private SubmoduleDescriptor submodule;
    private AbstractionType abstractionType;
    private List<MemberDescriptor> members;
    private List<TypeDescriptor> implementingTypes;
    private List<TypeDescriptor> inheritedTypes;
    private boolean generated;
    private String fullName;

    public SubmoduleDescriptor getSubmodule()
    {
        return submodule;
    }

    public void setSubmodule(SubmoduleDescriptor submodule)
    {
        this.submodule = submodule;
    }

    public AbstractionType getAbstractionType()
    {
        return abstractionType;
    }

    public void setAbstractionType(AbstractionType abstractionType)
    {
        this.abstractionType = abstractionType;
    }

    public List<MemberDescriptor> getMembers()
    {
        return members;
    }

    public void setMembers(List<MemberDescriptor> members)
    {
        this.members = members;
    }

    public List<TypeDescriptor> getImplementingTypes()
    {
        return implementingTypes;
    }

    public void setImplementingTypes(List<TypeDescriptor> implementingTypes)
    {
        this.implementingTypes = implementingTypes;
    }

    public List<TypeDescriptor> getInheritedTypes()
    {
        return inheritedTypes;
    }

    public void setInheritedTypes(List<TypeDescriptor> inheritedTypes)
    {
        this.inheritedTypes = inheritedTypes;
    }

    public boolean isGenerated()
    {
        return generated;
    }

    public void setGenerated(boolean generated)
    {
        this.generated = generated;
    }

    public String getFullName()
    {
        return fullName;
    }

    public void setFullName(String fullName)
    {
        this.fullName = fullName;
    }
}
